package com.mate.cloud.lottery.constants;

import com.mate.cloud.common.constant.BaseExceptionCodeEnum;

/**
 * 异常码Code
 *
 * @author: MI
 * @email: 448341911@qq.com
 * @createTime: 2025/1/24 12:14
 * @updateUser: MI
 * @updateTime: 2025/1/24 12:14
 * @updateRemark: 修改内容
 * @version: v1.0
 */
public enum LotteryExceptionCodeEnum implements BaseExceptionCodeEnum {
    /**
     * 成功
     */
    SUCCESS("200"),
    /**
     * 指定抽奖活动不存在
     */
    LOTTER_NOT_EXIST("9001"),
    /**
     * 活动已结束
     */
    LOTTER_FINISH("9002"),
    /**
     * 当前奖品库存不足
     */
    LOTTER_REPO_NOT_ENOUGHT("9003"),
    /**
     * 奖项数据未初始化
     */
    LOTTER_ITEM_NOT_INITIAL("9004"),
    /**
     * 上一次抽奖还未结束
     */
    LOTTER_DRAWING("9005"),
    /**
     * 请求参数不正确
     */
    REQUEST_PARAM_NOT_VALID("9006"),
    /**
     * 未找到奖品类型
     */
    REWARD_PROCESSOR_NOT_FOUND("9007"),
    /**
     * 未中奖时
     */
    LOTTERY_ITEM_NULL("9008"),
    /**
     * 默认奖项不存在
     */
    DEFAULT_PRIZE_NOT_FOUND("9009"),

    /**
     * 奖品初始化超时
     */
    PRIZE_INIT_TIMEOUT("9010"),

    PRIZE_TYPE_INVALID("9011"),
    /**
     * 系统繁忙,请稍后重试
     */
    SYSTEM_ERROR("9999")
    ;

    private final String code;

    LotteryExceptionCodeEnum(String code) {
        this.code = code;
    }

    @Override
    public String getCode() {
        return code;
    }
}
